import numpy as np
import pandas as pd
import os
import Augmentor
from shutil import *
import os
import re
import cv2
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings("ignore")
SRC_IMG = "/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/"
SRC_MASK = "/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image_Mask/"
IMAGE_ORIGINAL = "/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/30005279950000_25796256.png"
def plot_orig_aug(orig_img,aug_img):
fig = plt.figure(figsize=(20,20))
fig.add_subplot(1,2,1)
ax1 = fig.add_subplot(121)
ax1.title.set_text('Original Image')
plt.imshow(orig_img)
fig.add_subplot(1,2,2)
ax2 = fig.add_subplot(122)
ax2.title.set_text('Augmented Image')
plt.imshow(aug_img)
plt.show()
p = Augmentor.Pipeline(SRC_IMG)
p.random_erasing(probability=0.5,rectangle_area=0.5)
p.process()
original_image = cv2.imread(IMAGE_ORIGINAL)
aug1 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Random_Erasing_Image.png")
plot_orig_aug(original_image,aug1)
p.remove_operation()
p.rotate(probability=1,max_left_rotation=20,max_right_rotation= 20)
p.process()
aug2 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Rotate_Image.png")
plot_orig_aug(original_image,aug2)
p.remove_operation()
p.rotate_without_crop(probability=1,max_left_rotation=20,max_right_rotation= 20)
p.process()
aug3 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Rotate_wo_Crop_Image.png")
plot_orig_aug(original_image,aug3)
p.remove_operation()
p.skew_tilt(probability=1)
p.process()
aug4 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Skew_Tilt.png")
plot_orig_aug(original_image,aug4)
p.remove_operation()
p.random_distortion(probability=1,grid_width=10,grid_height=10,magnitude=10)
p.process()
aug5 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Random_Distortion_Image.png")
plot_orig_aug(original_image,aug5)
p.remove_operation()
p.flip_random(probability=1)
p.process()
aug6 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Flip_Random_Image.png")
plot_orig_aug(original_image,aug6)
p.remove_operation()
p.shear(probability=1,max_shear_left=15,max_shear_right=15)
p.process()
aug7 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Shear_Image.png")
plot_orig_aug(original_image,aug7)
p.remove_operation()
p.zoom(probability = 1,max_factor=1.5,min_factor=1.1)
p.process()
aug8 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Zoom_Image.png")
plot_orig_aug(original_image,aug8)
p.remove_operation()
p.gaussian_distortion(probability=1,grid_height=25,grid_width=25,magnitude=10,corner='bell',method='in')
p.process()
aug9 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Gaussian_Distortion_Image.png")
plot_orig_aug(original_image,aug9)
p.remove_operation()
p.histogram_equalisation(probability=1)
p.process()
aug10 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Histogram_Equalization_Image.png")
plot_orig_aug(original_image,aug10)
p.remove_operation()
p.crop_by_size(probability = 1.0,width =256, height = 256, centre = False)
p.resize(probability = 1.0,width = 500, height = 500)
p.process()
aug11 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/CropResize_Image.png")
plot_orig_aug(original_image,aug11)
p.remove_operation()
aug12 = cv2.cvtColor(original_image,cv2.COLOR_BGR2GRAY)
cv2.imwrite("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/BlackWhite_Image.png",aug12)
aug12 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/BlackWhite_Image.png")
plot_orig_aug(original_image,aug12)
aug13 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/WhiteBlackRain_Image.png")
plot_orig_aug(original_image,aug13)
aug14 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/ColorRain_Image.png")
plot_orig_aug(original_image,aug14)
aug15 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Contrast_Image.png")
plot_orig_aug(original_image,aug15)
aug16 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Brightness_Image.png")
plot_orig_aug(original_image,aug16)
aug17 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Gamma_Image.png")
plot_orig_aug(original_image,aug17)
aug18 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Salt_Pepper_BW_Image.png")
plot_orig_aug(original_image,aug18)
aug19 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Salt_Pepper_RGB_Image.png")
plot_orig_aug(original_image,aug19)
/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Snow_Image.png
aug20 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Snow_Image.png")
plot_orig_aug(original_image,aug20)
aug21 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/HSV_Image.png")
plot_orig_aug(original_image,aug21)
aug22 = cv2.imread("/home/affine/Downloads/TGS_OilPad_Identify/Augmentation Methods/Image/output/Polygon_Shadow_Image.png")
plot_orig_aug(original_image,aug22)